Video on Demand (VoD) systems allow users to select and view video content on demand. The content is stored by the VoD operator at various locations in the network. The content can be either streamed in real-time to a user set-top-box (STB) or downloaded on a user device (PC or DVR), over a content delivery network (CDN).
VoD systems comprise several components (see FIG. 1). A video service office (VSO) 101 or headend is provided acting as a master server that has a content library storing all the content in the system. The VoD system comprises a streaming server such as a B-1 server available from Motorola Mobility, Inc. The VSO is the entry point of all the content in the system, where the content is initially processed and stored. The system has several video home offices (VHOs) 102 acting as servers. Each VHO 102 consists of caching servers and streaming servers such as a B-3 server available from Motorola Mobility, Inc. The streaming servers process and send content requested by users. The servers store content at the VHOs prior to being sent to users. The VSO 101 and the VHOs 102 are connected over a regional network such as a fiber-optic ring. The VHOs 102 provide content to the STBs 103.
In some current implementations the VHOs 102 are exact replicas of the VSO 101 in terms of the stored content. The VSO 101 uses networking technologies such as the negative acknowledgment (ACK) reliable multicast (NORM) protocol in order to distribute new content across the network to the VHO 102 caches. This solution is preferred due to (i) the efficiency of NORM (store-and-forward across the fiber ring) and (ii) lower access latency—requests made to VHO 102 servers are always satisfied locally. However, this approach has scalability issues, imposing higher costs on the operator. This is because VHO 102 caches need to have large storage space, to store all the content in the system.
Not all content will be needed at all VHOs 102. For instance, data from a recent survey of a VSO 101 shows that only 8000 items from a 40000 item library were requested during a 3 day recorded interval. Moreover, the items of interest will likely differ between regions served by different VHOs 102, making an exact replication solution wasteful. Finally, whenever the VoD operator decides to offer more content, the storage (disks+RAM) on each VHO 102 needs to be upgraded. The cost of the upgrade is then proportional to the number of VHOs 102.
One solution to this problem is to store a subset of the VSO 101 at each VHO 102. A problem then becomes how to download content that is not stored at the VHO 102 when, or if that content is requested by a user. Therefore a need exists for a method and apparatus for downloading content within a video-on-demand system.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and/or relative positioning of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention. It will further be appreciated that certain actions and/or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. Those skilled in the art will further recognize that references to specific implementation embodiments such as circuitry may equally be accomplished via either on general purpose computing apparatus (e.g., CPU) or specialized processing apparatus (e.g., DSP) executing software instructions stored in non-transitory computer-readable memory. It will also be understood that the terms and expressions used herein have the ordinary technical meaning as is accorded to such terms and expressions by persons skilled in the technical field as set forth above except where different specific meanings have otherwise been set forth herein.